Dual-tone multifrequency (DTMF) signalling is an industry standard format for communication of a specified digit or character from a transmitter to a receiver. Typically, DTMF signalling is used in telephone networks to place a telephone call or to initiate a predetermined function such as call forwarding, conference calling, or call transferring. Additionally, DTMF signalling is generally used in communication systems which require responses from a user of the system. For example, an automated banking transaction might require that a user provide an identification number and select one of a predetermined number of banking functions. Similarly, credit card orders of consumer goods and information systems also generally require a user interface which uses DTMF signalling.
To function correctly in a communication system, DTMF signalling assigns a predetermined set of two tones to each number or character of a telephone keypad. The set of two tones includes both a low tone which ranges from 600 Hz to 1000 Hz and a high tone which ranges from 1200 Hz to 1700 Hz. DTMF signalling uses four predetermined low tones and four predetermined high tones to encode a total of sixteen possible digits or characters. During transmission, a DTMF transmitter combines the low and the high tones to provide a single transmission signal to a DTMF receiver.
To correctly detect one of the sixteen digits or characters, the DTMF receiver must detect and decode the transmission signal provided by the DTMF transmitter. Correct detection of a signal or character encoded using the DTMF signalling method requires both a valid pair of tones and a correct timing procedure. The correct timing procedure requires that the transmission signal must provide a digit or a character for a minimum of forty milliseconds and a maximum of sixty milliseconds. Additionally, the transmission signal is also required to have a dead time of at least fifty milliseconds before another digit or character is received. If a signal provided to the DTMF receiver does not meet the requirements specified by the timing procedure, a valid tone is not received.
DTMF receivers are also required to detect valid frequencies between plus or minus 1.5% of a respective frequency of each one of the pair of valid tones. Tones which vary by plus or minus 3.5% must be rejected as invalid. By rejecting such tones, DTMF receivers do not falsely detect speech or other transferred signals as valid tones which represent one of the plurality of predetermined DTMF values. Additionally, DTMF receivers must be able to detect a tone with a worst case signal to noise ratio of 15 dB and an attenuation of 26 dB. When a high tone and a low frequency tone are received at different strengths, DTMF receivers must be able to compensate for the strength difference, which is also referred to as "twist." When the high frequency tone is received at a lower strength level than the low frequency tone, normal twist occurs. Conversely, when the low frequency tone is received at a lower strength level than the high frequency tone, reverse twist occurs. DTMF receivers must compensate for a maximum of 8 dB of normal twist and 4 dB of reverse twist.
Although originally developed as analog circuits, some DTMF receivers are currently implemented using a digital signal processor having a DTMF decode circuit. For example, in a first digital implementation, a DTMF decoder is formed using a plurality of tuned filters to receive and decode an input signal provided by a DTMF transmitter. The plurality of tuned filters are typically implemented as bandpass infinite impulse response (IIR) filters. The encoded input signal is appropriately scaled and then band-pass filtered to provide a high frequency signal and a low frequency signal. The high and low frequency signals are respectively provided to a first and a second plurality of resonators.
Each of the first and second plurality of resonators is tuned to a predetermined one of the eight frequencies (four high frequency tones and four low frequency tones) used in DTMF encoding. For example, a fourth one of the first plurality of resonators is tuned to a high frequency tone of 1633 Hz. Similarly, a first one of the second plurality of resonators is tuned to a low frequency tone of 697 Hz. If the high frequency input signal includes one of the four high frequency tones used in DTMF encoding, a respective one of the first plurality of resonators corresponding to the input tone provides a high tone output signal indicating that a valid high frequency tone is present. If the high frequency input signal does not include one of the four high frequency tones used in DTMF encoding, the first plurality of resonators does not provide the output signal. Similarly, if the low frequency input signal includes one of the four low frequency tones used in DTMF encoding, a respective one of the second plurality of resonators corresponding to the input tone provides a low tone output signal indicating that a valid low frequency tone is present. Additionally, if the low frequency input signal does not include one of the low frequency tones used in DTMF encoding, the second plurality of resonators does not provide the output signal. If valid, the high and low tone output signals provided by the first and the second plurality of resonators are subsequently processed and manipulated by a digital signal processor to determine if all specifications of DTMF encoding and reception are fulfilled. Although the tuned resonator approach described above provides a digital solution to decoding DTMF encoded frequencies, at least eight resonator circuits and corresponding detector circuits are required. Additionally, the tuned resonator approach requires a significant amount of processing time to decode and test a DTMF encoded signal. For more information on a matched filter implementation of a DTMF receiver, refer to a Western Electric application note entitled "AN-1 Dual Tone Multifrequency Receiver Using the Digital Signal Processor" written by E. S. Chatlos, Jr., in July, 1981.
A second known digital implementation of a DTMF receiver uses a Goertzel algorithm to decode a DTMF encoded signal. The second implementation uses the Goertzel algorithm to calculate a single coefficient of a predetermined discrete Fourier transform (DFT). Additionally, the second implementation may use the Goertzel algorithm in a recursive manner to save processing time typically needed to decode a DTMF encoded signal. A circuit for implementing the Goertzel algorithm is described in more detail in an application note published by AT&T entitled "Dual-Tone Multifrequency Receiver Using the WE DSP32 Digital Signal Processor." The authors, J. Hartung, S. L. Gay, and G. L. Smith, published the application note in June, 1988. Although the Goertzel algorithm may decode a DTMF encoded signal more quickly than the first implementation described above, at least eight filters are again required. Therefore, the amount of DTMF decoder circuitry used to implement the Goertzel algorithm is not reduced.
The first and second implementations of DTMF receivers described herein are typically used in digital receiver systems to receive and subsequently decode DTMF encoded signals for further use. In either implementation, however, a substantial amount of circuitry is needed to detect a frequency of the encoded input signal. Additionally, an excessive amount of processing time is typically necessary to execute the decode operation of the input signal in the implementations of the DTMF receivers described above.
The time necessary to execute the decode operation of the input signal in the implementations of the DTMF receivers described above is further lengthened by limitations of digital signal processors. During DTMF decoding, a digital signal processor (DSP) may perform a number of functions by multiplexing a plurality of input channels at different times. However, the number of input channels which may be processed by the DSP is limited by the frequency at which the input channels are transmitted. In one software based implementation, a greater number of input channels may be decoded and processed more efficiently if the encoded signal is processed at a lowest possible sampling rate. By lowering the sampling rate, the DSP does not have to perform each of the processing steps as quickly as would be required if the sampling rate was higher. Therefore, the DSP is free to further multiplex functions such that a greater number of input channels may be decoded and processed in a more efficient manner. Still, however, a plurality of filters is required to compute coefficients of a discrete Fourier transform corresponding to the input signal. The input signal is then decimated to provide a decimated composite frequency signal. To detect whether the decimated composite frequency includes one of the plurality of DTMF tones, a plurality of matched filters is provided to detect whether a predetermined one of the plurality of DTMF tones is encoded within the input signal. Although the software implementation of a DTMF decoder described above uses a DSP more efficiently, a plurality of detectors is still required to detect a valid DTMF tone in an input signal.
An example of an implementation of the DTMF decoder described above is provided in an article written by R. A. Valenzuela and entitled "Efficient DSP Based Detection of DTMF Tones." The article was presented at the IEEE Global Telecommunications Conference & Exhibition held from December 2 to December 5 in 1990 and was published in volume 3 of the corresponding proceedings. However, in the DTMF decoder described therein, only a portion of the DTMF encoded signals could be processed. Additionally, in the method described by Valenzuela, matched filters are still required to detect a presence of one of the plurality of DTMF encoded signals. Therefore, although more input channels may be processed by the DSP, a substantial amount of circuitry is required.
For each implementation of a DTMF receiver described above, at least two coefficients and two data values must be stored for each tuned filter. A substantial amount of memory is, therefore, required to store each of the required data values over a period of time determined by the frequency at which the input tone is sampled by the DTMF receiver. Additionally, for the DTMF receivers previously described, a predetermined number of input signals are required to accurately detect the presence of a DTMF tone. The performance of each of the DTMF receivers is, therefore, constrained by a predetermined amount of time required to receive and process the input signals. In each of the known implementations of DTMF receivers described herein, a DTMF tone may not be accurately detected before the predetermined amount of time has passed.
Therefore, a need exists for a DTMF receiver to efficiently detect and process an input signal using a minimum amount of both logic and memory circuitry. The input signal should be tested to ensure that all the specifications of a DTMF encoded signal are fulfilled. The DTMF receiver should also process a maximum number of input channels and continue to provide accurately decoded results.